#pragma once 
//#include <Ogre.h>
#include "GameObject.h"
class CWeapon: public GameObject {
public:
    GameInst* createInstance(const std::string &name = "");

    CWeapon(const std::string &name, const std::string &scriptName = "");

    virtual void loadConfigScript();
    const std::string& getBarrageName() const { return mBarrageName; }
    float mPower;
    float mSpeed;
    int mQuantity;
    //void 
protected:
    std::string mBarrageName;
};

class CWeaponInst: public GameInst {
public:
    CWeaponInst(CWeapon *pObject, const std::string &name);
    virtual void update(float dt);
    int mCurQuantity;
protected:
    class CBarrage *mBarrage;
};